package com.example;

import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration;
import org.springframework.cloud.client.discovery.EnableDiscoveryClient;
import org.springframework.scheduling.annotation.EnableAsync;
import org.springframework.transaction.annotation.EnableTransactionManagement;

/**
 * @Author 刘武贵
 * @Date 2024/2/27 23:42
 * @Description 功能描述：启动用户服的类
 */
@SpringBootApplication
/**
 * 开启Spring的事务管理功能，proxyTargetClass属性表示使用CGLIB代理
 */
@EnableTransactionManagement(proxyTargetClass = true)
/**
 * 扫描指定包下的Mapper接口，以便使用MyBatis进行数据库操作
 */
@MapperScan(value = { "com.example.user.mapper" })
/**
 * 注解用于启用DiscoveryClient，用于服务发现和注册
 */
@EnableDiscoveryClient
/**
 * 在服务中开启异步线程池任务，需要使用@EnableAsync
 */
@EnableAsync
public class UserStarter {
    public static void main(String[] args){
        SpringApplication.run(UserStarter.class, args);
    }

}